package com.ruoyi.system.mapper;

import java.util.List;
import com.ruoyi.system.domain.DefCompany;
import com.ruoyi.system.domain.request.CompanyRequest;
import com.ruoyi.system.domain.vo.DefCompanyListVo;

/**
 * 单位管理Mapper接口
 * 
 * @author ruoyi
 * @date 2024-10-09
 */
public interface DefCompanyMapper 
{
    /**
     * 查询单位管理
     * 
     * @param companyId 单位管理主键
     * @return 单位管理
     */
    public DefCompany selectDefCompanyByCompanyId(Integer companyId);

    /**
     * 查询单位管理列表
     * 
     * @param defCompany 单位管理
     * @return 单位管理集合
     */
    public List<DefCompany> selectDefCompanyList(DefCompany defCompany);

    /**
     * 新增单位管理
     * 
     * @param defCompany 单位管理
     * @return 结果
     */
    public int insertDefCompany(DefCompany defCompany);

    /**
     * 修改单位管理
     * 
     * @param defCompany 单位管理
     * @return 结果
     */
    public int updateDefCompany(DefCompany defCompany);

    /**
     * 删除单位管理
     * 
     * @param companyId 单位管理主键
     * @return 结果
     */
    public int deleteDefCompanyByCompanyId(Integer companyId);

    /**
     * 批量删除单位管理
     * 
     * @param companyIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteDefCompanyByCompanyIds(Integer[] companyIds);

    List<DefCompany> selectCompanyNamesByIds(List<Integer> companyIds);

    List<DefCompanyListVo> selectList(CompanyRequest request);
}
